import org.omg.CORBA.PUBLIC_MEMBER;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 邓大帅
 * Date: 2024-01-10
 * Time: 10:31
 */
//继承最大的意义：对代码的复用
//Java中只能单继承，子类只能继承一个父类
//当一个类不想被继承时，可以用final关键字修饰  若用final修饰变量这个变量就变为了常量，就无法修改了(特别的，常量一般用大写英文字母命名)
//如果是成员变量定义为final 语法规定 必须同时给定一个初始值
class Animal {
    public String name;
    public int age;
    public void eat() {
        System.out.println(this.name + " 正在吃饭！ ");
    }
}
//子类在初始化之前要先调用父类的构造方法帮父类进行初始化
//也就是说 在new子类对象时会调用子类构造方法，在子类的构造方法第一行就会调用父类的构造方法，若你自己没有完成这个操作，系统会隐式的完成
//由于用this和super调用构造方法时都必须在当前构造方法的第一行，所以不能同时出现，会冲突
class Dog extends Animal {
    public void wangWang() {
        System.out.println(this.name + " 汪汪叫");
    }
}
class Cat extends Animal {
    public void miaoMiao() {
        System.out.println(this.name + " 喵喵叫");
    }
}
public class Test2 {
    public static void main(String[] args) {

    }
}
